package cn.qhuan.modules.service;

import cn.qhuan.modules.dtos.ExhiDto;
import cn.qhuan.modules.dtos.ExhiTimeDto;
import cn.qhuan.modules.entity.Exhibition;

import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;

import java.util.List;

/**
 * @Description: 展厅表
 * @Author: 司翔宇
 * @Date:   2020-12-18
 * @Version: V1.0
 */
public interface IExhibitionService extends IService<Exhibition> {
    /**
     * 根据关键字模糊查询
     * @param exhiDto
     * @return
     */
    public Result<?> findByKeyWord(ExhiDto exhiDto);

    /**
     * 根据类别id查询展厅id
     * @param id
     * @return
     */
    public List<String> findExhiIdsByClassId(String id);

    /**
     * 根据时间查询进行中的展厅
     * @param dto
     * @return
     */
    public Result<?> findExhiByTime(ExhiTimeDto dto);

    /**
     * 根据时间查询已经结束的展厅
     * @param dto
     * @return
     */
    public Result<?> findEndExhiByTime(ExhiTimeDto dto);

    /**
     * 根据时间查询未开始的展厅
     * @param dto
     * @return
     */
    public Result<?> findNoStartedByTime(ExhiTimeDto dto);

    /**
     * 默认加载最新十条展览数据
     * @param dto
     * @return
     */
    public Result<?> loadNewExhiList(ExhiTimeDto dto);
    /**
     * 根据展厅id查询作品数量
     * @param exhiId
     * @return
     */

    public Result<?> selectWorksCountByExhiId(String exhiId);
    /**
     * 根据展厅id查询文档数量
     * @param exhiId
     * @return
     */

    public Result<?> selectDocCountByExhiId(String exhiId);
    /**
     *根据艺术家id展示在线展厅
     * @param artistId
     * @return
     */
    public Result<?> queryExhiByArtistId(String artistId);

    /**
     * 根据展厅id查询关联的作品
     * @param dto
     * @return
     */
    public Result<?> findWorksListByExhiId(ExhiDto dto);
}
